home *** CD-ROM | disk | FTP | other *** search
-
- ***********************************************************************
- * The copyright notice and credits are at the end of this file *
- ***********************************************************************
-
- Contents:
- ---------
- Aims
- Features
- Compatibility
- About JPEG
- Operation
- Menus
- Options Windows : To JPEG window, From JPEG window
- Hints
- Known Bugs
- Solid Drags in RiscOS3
- Author's address
- New features since last release
- Copyright notice and credits
-
-
-
- Aims:
- -----
-
- The !ArcJPEG application provides a desktop front-end for the fourth release
- of the Independent JPEG Group's free JPEG software, the command-line
- programs "cjpeg" and "djpeg", which implement JPEG image compression and
- decompression.
- It will convert JPEG images (filetype &C85) to either PBMPlus (&69E), Targa
- (&69D) or GIF (&695) file formats and also the reverse process, creation of
- a JPEG file from the above.
- Can be used in conjunction with either !Translator or !ChangeFSI to display
- JPEG files.
-
- Features include:
- -----------------
-
- * Full control of all features provided by version four of and djpeg and
- most of cjpeg.
- * Destination file hotlinks
- * Application hotlinks
- * Multitasking file conversion (see compatibility note below)
- * Quick opening of options and file information windows by clicking on
- iconbar icon with select and adjust (configurable)
- * Uses new features in RiscOS3, such as solid icon drags (when selected in
- CMOS ram, see note at end of file), but still remaining compatible with
- RiscOS2 (see compatibility note below)
-
- Compatibility:
- --------------
-
- To work under RiscOS2 it needs the Interface Manager by Simon Huntington and
- the CLib and FPEmulator modules, which should be located in the
- !System.Modules directory.
- For multitasking file conversions to work under RiscOS2 you need at least
- version 0.29 of the taskwindow module which is supplied with Desktop C and
- Desktop Assembler. If you don't have the taskwindow module then the program
- will still work, but without that feature.
- When running under RiscOS3 the interface module is not needed and the other
- modules, including the taskwindow module are present in ROM.
-
- About JPEG:
- -----------
-
- JPEG (pronounced "jay-peg") is a standardized compression method for
- full-colour and gray-scale images. JPEG is designed to handle "real-world"
- scenes, for example scanned photographs. Cartoons, line drawings, and other
- non-realistic images are not JPEG's strong suit; on this sort of material
- you may get poor image quality and/or little compression.
- JPEG is lossy, meaning that the output image is not necessarily identical to
- the input image. Hence you should not use JPEG if you have to have identical
- output bits. However, on typical real-world images, very good compression
- levels can be obtained with no visible change, and amazingly high
- compression is possible if you can tolerate a low-quality image.
-
- Operation:
- ----------
-
- The !ArcJPEG application starts up when you double-click on its filer icon
- or on a JPEG file and installs itself on the icon bar.
- JPEG files can be loaded by either double-clicking on its filer icon or
- dragging the icon onto the iconbar. PBMPlus, Targa, and Gif files can only
- be loaded by dragging onto the icon. This is so that !ArcJPEG can coexist
- with programs like !Translator or !ChangeFSI.
-
- Menus:
- ------
-
- Icon bar menu:
- --------------
-
- -------------
- | ArcJPEG |
- |-----------|
- | Info ⇨| ⇨ Opens "About this program" window
- | Open Win ⇨| ⇨ Opens Open Win submenu (see below)
- | Hotlink ⇨| ⇨ Opens Hotlink submenu (see below)
- | Options ⇨| ⇨ Opens Options submenu (see below)
- | Quit | Quits program
- -------------
-
- Open Win submenu:
- -----------------
-
- -------------
- | Open Win |
- |-----------|
- | File Info | Opens window showing input/output filenames and process time
- | To JPEG | Opens options window for creation of jpeg files
- | From JPEG | Opens options window for decompaction of jpeg files
- -------------
-
- Hotlink submenu:
- ----------------
-
- -----------------
- | Hotlink |
- |---------------|
- |€ Save Box | Selects normal save box to appear when saving
- | hotlink 1 ⇨| \ Selects file hotlinks
- | hotlink 2 ⇨| | Subwindows also allow hotlink filename to be set by
- | hotlink 3 ⇨| / dragging icon to a filer window or by typing the name
- |---------------|
- | Application ⇨| Subwindow allows application hotlinks to be set
- | ChangeFSI | Example of application hotlink
- -----------------
-
- When savebox is selected a savebox appears in the normal way when a file is
- saved.
-
- When any of the hotfile options is selected the filename in the hotfile
- subwindow is used for the output file. This filename can be changed or set
- by either typing it into the writable box in the subwindow (pressing return
- or clicking on OK closes the menu but is not needed to make the change
- permanent) or dragging the icon onto a filer window. Either of these
- operations results in that particular option being selected.
-
- The Application subwindow is used to set up application hotlinks. This can
- be done in two ways, either by dragging the icon from the application
- subwindow to an icon on the icon bar or by selecting the application option
- which results in the same window as before popping up when a file is loaded.
- When the icon is dragged from the menu window the menu is removed from the
- screen so that any obscured icons on the iconbar are revealed. When an
- application hotlink is setup, the application name appears on the bottom of
- the menu, the hotlink is always selected after creation. Once set then can
- be selected by simply clicking on the application name required. Since the
- hotlink is invalid when the application has quitted, even if it is reloaded,
- entries are removed when the application quits. For this reason these
- options are not saved, if an application hotlink was selected when the
- options were saved than the application item is selected when they are
- loaded up.
-
- Options submenu:
- ----------------
-
- ---------------
- | Options |
- |-------------|
- | Multitask | Selects Multitasking file conversion
- |€ Fast Mode | Selects "Fast Mode" (single tasking file conversion only)
- | Program ⇨| Subwindow allows DJPEG or CJPEG to be held in ram
- | Icon Bar ⇨| Subwindow allows selection of effect of clicking on
- |-------------| iconbar icon
- | Save | Saves options and file hotlink filenames
- | Load | Loads saved options and clears application hotlinks
- | Default | Sets default options and clears application hotlinks
- ---------------
-
- This allows the options to be saved, reloaded or set to the defaults. The
- default or load options remove all the application hotlinks from the list.
- The last saved options are always loaded up when the program is started.
- Selecting Mulititask selects multitasking file conversions and greys out the
- Fast Mode option as it is invalid for these operations.
- Selecting Fast Mode speeds up single tasking file conversion by turning off
- the screen display when processing the file.
- The Program subwindow sets whether DJPEG and CJPEG are loaded from disc
- for each file conversion or kept in ram. Keeping the program(s) in ram
- saves disc swaping if running off a floppy disc at the expence of ram,
- about 50K for each program, not realy any use if it is installed on a
- hard disc.
- The Icon Bar subwindow sets which window gets opened when the select and
- adjust buttons of the mouse are clicked on the iconbar icon.
-
- Window menu:
- ------------
-
- This is opened when the menu button is pressed over any of the options
- windows and the file information window. It is the same as the iconbar menu
- except as shown below
-
- -------------
- | ArcJPEG |
- |-----------|
- | Reprocess |---Clicking on Reprocess will reprocess the last file that was
- | Open Win ⇨| converted. Useful when seeing the effect of changing the
- | Hotlink ⇨| options on the resulting image where the same file is loaded
- | Options ⇨| every time.
- -------------
-
- Note, no quit option.
-
- Options Windows:
- ----------------
-
- To JPEG window:
- ---------------
-
- This controls the cjpeg program which creates JPEG files from the various
- input formats.
-
- Optimise:
- When selected optimization of the entropy encoding parameters is performed.
- Without this, default encoding parameters are used. Optimize usually makes
- the JPEG file a little smaller, but cjpeg runs somewhat slower and needs
- much more memory. Image quality and speed of decompression are unaffected by
- Optimize.
-
- Quality:
- Selecting this means the number in the writable box below is used for the
- quality value rather than the default value of 75.
- This value adjusts the scale quantization tables which adjust the image
- quality. The value is 0 (worst) to 100 (best). This allows you to trade off
- compressed file size against quality of the reconstructed image: the higher
- the quality setting, the larger the JPEG file, and the closer the output
- image will be to the original input. Normally you want to use the lowest
- quality setting (smallest file) that decompresses into something visually
- indistinguishable from the original image. For this purpose the quality
- setting should be between 50 and 95; the default of 75 is often about right.
- If you see defects at 75, then go up 5 or 10 counts at a time until you are
- happy with the output image. (The optimal setting will vary from one image
- to another.)
- A quality value of 100 will generate a quantization table of all 1's,
- eliminating loss in the quantization step (but there is still information
- loss in subsampling, as well as roundoff error). This setting is mainly of
- interest for experimental purposes. Quality values above about 95 are NOT
- recommended for normal use; the compressed file size goes up dramatically
- for hardly any gain in output image quality.
- In the other direction, quality values below 50 will produce very small
- files of low image quality. Settings around 5 to 10 might be useful in
- preparing an index of a large image library, for example. Try 2 (or so) for
- some amusing Cubist effects. (Note: quality values below about 25 generate
- 2-byte quantization tables, which are considered optional in the JPEG
- standard.
-
- Colour-Grey Scale:
- These select whether the output image will be in colour or grey scale.
- Be sure to select Grey Scale when compressing a grayscale GIF file, because
- cjpeg isn't bright enough to notice whether a GIF file uses only shades of
- gray. By selecting Grey Scale, you'll get a smaller JPEG file that takes
- less time to process.
-
- Restart:
- This option when selected includes markers in the JPEG file every N rows,
- where N is the number in the writeable box below. This allow a JPEG decoder
- to resynchronize after a transmission error. Without restart markers, any
- damage to a compressed file will usually ruin the image from the point of
- the error to the end of the image; with restart markers, the damage is
- usually confined to the portion of the image up to the next restart marker.
- Of course, the restart markers occupy extra space. We recommend a value of
- 1 for images that will be transmitted across unreliable networks such as
- Usenet.
-
- Smooth:
- When selected the input file is filtered to eliminate fine-scale noise.
- This is often useful when converting GIF files to JPEG: a moderate smoothing
- factor of 10 to 50 gets rid of dithering patterns in the input file,
- resulting in a smaller JPEG file and a better-looking image. Too large a
- smoothing factor will visibly blur the image, however.
-
- From JPEG window:
- -----------------
-
- This controls the djpeg program which creates PBMPlus, Targa or Gif files
- from JPEG files.
-
- PBMPlus-Targa-Gif:
- These allows the output file format to be selected.
- Changing this when a save box is on screen does have an affect and even
- changes the icon in the save box when it is open.
- Selecting Gif file output means that colours are by default quantised at
- 256, unless the Force Colours option is selected.
- Selecting Gif ungreys the options that correspond to the quantisation of
- colours, when a 24 bit format is then selected the quantisaton options
- are greyed out unless the Force Colours option in the is selected.
-
- Colour-Grey Scale:
- When Colour is selected then the output file will be in colour (if the
- original image was colour), selecting Grey Scale will result in the output
- image being in black and white.
-
- Force Colours:
- When Force Colours is selected this sets the number of colours for
- quantisation to the number in the writable icon and ungreys out the colour
- quantisation options. The maximum number of colours in a Gif file is 256. If
- Gif is selected then the quantisation options are also ungreyed out.
-
- One Pass-Two Pass:
- When One Pass (quantisation) is selected this rather than the normal Two
- Pass quantisation is used. The one-pass method is faster and needs less
- memory, but it produces a lower-quality image.
-
- FSI Dither:
- This option selects whether FSI dithering is used when quantising colours.
- This is selected by default when quantisation is selected.
-
- Cross Block:
- When selected, Cross Block smoothing is used when quantising colours. This
- is quite memory-intensive and only seems to improve the image at very low
- quality settings (10 to 20 or so). At normal quality settings it may make
- things worse.
-
- Hints:
- ------
-
- Colour GIF files are not the ideal input for JPEG; JPEG is really intended
- for compressing full-colour (24-bit) images. In particular, don't try to
- convert cartoons, line drawings, and other images that have only a few
- distinct colours. GIF works great on these, JPEG does not. If you want to
- convert a GIF to JPEG, you should experiment with cjpeg's quality and
- smooth options to get a satisfactory conversion. A smooth value of 10 or so
- is often helpful.
- Avoid running an image through a series of JPEG compression/decompression
- cycles. Image quality loss will accumulate; after ten or so cycles the image
- may be noticeably worse than it was after one cycle. It's best to use a
- lossless format while manipulating an image, then convert to JPEG format
- when you are ready to file the image away.
- The optimize option to cjpeg is worth using when you are making a "final"
- version for posting or archiving. It's also a win when you are using low
- quality settings to make very small JPEG files; the percentage improvement
- is often a lot more than it is on larger files.
- When making images to be posted on Usenet, we recommend using cjpeg's option
- restart with a value of 1. This option limits the damage done to a
- compressed image by netnews transmission errors.
- The <Wimp$ScrapDir> directory is used for tempory files if there is not
- enough RAM available.
- The <Wimp$Scrap> file is used for application hotlinks.
- The WimpSlot value given to the process can be changed in the !Run file.
- 360K is the default value.
-
- Known Bugs:
- -----------
-
- When dragging the application icon off the window when setting the
- applicaton hotlink, the icons on the icon bar are sometimes not redrawn
- correctly when the window disapears.
-
- Solid Drags in RiscOS3:
- -----------------------
-
- If you have RiscOS 3 then you can have solid drags when dragging the icon
- out of the saveboxes. A solid drag is when the file icon (rather than a
- dashed box) is used when dragging. This feature is also used by the
- applications present in ROM, such as !Edit, but not the filer.
- Cut out the simple basic program below (sourced from usenet), load it into
- !Edit and save it as BASIC. When run it will toggle the solid drag option in
- the CMOS RAM.
-
- 10REM Toggle state of DragASprite bit in CMOS
- 20REM Read byte
- 30SYS "OS_Byte",161,&1C TO ,,byte%
- 40REM EOR byte with mask for bit 1
- 50byte% = byte% EOR 1<<1
- 60REM Write byte back again
- 70SYS "OS_Byte",162,&1C,byte%
- 80END
-
- Author's address:
- -----------------
-
- I, Andrew Sellors, can be contacted either at
- 57 Boundaries Road
- Feltham
- Middlesex
- TW13 5DR
-
- Or via Internet email at
- sellrsaj@ph.ic.ac.uk
-
- New features since last release
- -------------------------------
-
- Added to v1.13
- : Holding of DJPEG and CJPEG in ram (configurable)
-
- Added to v1.14
- : Improved Wimp Polling (doesn't eat nulls now)
- : Improved error handling during loading/saving
- : Ability to change WimpSlot given to process in !Run file
-
-
- Copyright notice and credits:
- -----------------------------
-
- !ArcJPEG is FreeWare. This means that you may freely copy and distribute it,
- provided that it is complete with all original files, and that you do not
- sell it. PD libraries may charge a nominal fee for the cost of duplication,
- postage etc.
- In no circumstances shall the author be liable for any damage, loss of
- profits, time or data or any indirect or consequential loss rising out of
- the use of this software or inability to use this software.
-
- !ArcJPEG was written with the help of !BlibII ,Copyright 1992 Ian Palmer,
- a BASIC program library linker and the associated libraries shown below.
- Event - © Ian Palmer, 1st March 1993
- Icon - © Ian Palmer & Tom Hughes, 1st March 1993
- Memory - © Ian Palmer, 1st March 1993
- Menu - © Ian Palmer, 1st March 1993
- OS - © Ian Palmer, 1st March 1993
- Sprite - © Tom Hughes 1st March 1993
- Template - © Ian Palmer & Tom Hughes, 2nd March 1993
- WIMP - © Ian Palmer & Tom Hughes, 1st March 1993
- Window - © Ian Palmer & Tom Hughes, 1st March 1993
- as well as my own libraries © Andrew Sellors 1993
-
- The Interface Manager module is © Simon Huntington
-
- !ArcJPEG was beta-tested by Dominic Thomas, and who suggested the previous
- name needed changing, if you think it is bad now you should have seen it
- before.
-
- The programs djpeg and cjpeg were ported to the Archimedes by Tom Crossland.
- The JPEG sources are written by the people of 'The Independent JPEG Group'.
-